home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 2 / AACD 2.iso / AACD / WebSites / Sites / Amigactive / images / menu / MakeNavBar.rexx < prev    next >
OS/2 REXX Batch file  |  1999-05-02  |  2KB  |  66 lines

  1. /* Generates an imagemap from a set of discrete images */
  2.  
  3. options results
  4. address command
  5. parse arg ImageList
  6. if ImageList = '' then ImageList = 'home.gif issues.gif cds.gif subs.gif surveys.gif'
  7. MapFile = 'NavBar.map'
  8. TempDir = 'T:MakeNavBar'
  9. drop Images. ImageRoot. ImageExt. Width. Height.
  10. if ~exists(Tempdir) then 'MakeDir >NIL:' Tempdir
  11.  
  12. i = 0
  13. Images.i = 'logo.gif'
  14. Images.1 = 'curve.gif'
  15. i = 2
  16. do while ImageList > ''
  17.     parse var ImageList Images.i ImageList
  18.     i = i + 1
  19.     end
  20. Images.i = 'tailend.gif'
  21. Images.Count = i
  22.  
  23. Width.Total = 0
  24. Height.Total = 0
  25. do i = 0 to Images.Count
  26.     parse var Images.i ImageRoot.i '.' ImageExt.i
  27.     select
  28.         when upper(ImageExt.i) = 'GIF' then 'giftopnm images/'Images.i' >'AddPart(TempDir,ImageRoot.i'.ppm')
  29.         otherwise nop
  30.         end
  31.     'pnmfile' AddPart(TempDir,ImageRoot.i'.ppm') '>ENV:MakeNavBar'
  32.     tmp = GetVar('MakeNavBar')
  33.     parse var tmp x 'raw, ' Width.i ' by ' Height.i ' ' .
  34.     Width.Total = max(Width.total,Width.i)
  35.     Height.Total = Height.Total + Height.i
  36.     end
  37.  
  38. call open(out,MapFile,'W')
  39. call writeln(out,'<map name="NavBar">')
  40. 'ppmmake white' Width.Total Height.Total '>'AddPart(TempDir,'NavMap.ppm')
  41. Top = 0
  42. do i = 0 to Images.Count
  43.     'pnmcomp -x 0 -y 'Top AddPart(TempDir,ImageRoot.i'.ppm') AddPart(TempDir,'NavMap.ppm') '>'AddPart(TempDir,'NavMap1.ppm')
  44.     call delete(AddPart(TempDir,'NavMap.ppm'))
  45.     call rename(AddPart(TempDir,'NavMap1.ppm'),AddPart(TempDir,'NavMap.ppm'))
  46.     select
  47.         when i = 0 then call writeln(out,'<area shape="rect" coords="0,'Top','Width.i','Top + Height.i'" href="main.html" target="f_main" alt="'ImageRoot.i'">')
  48.         when i = 1 then nop
  49.         when i = Images.Count then nop
  50.         otherwise call writeln(out,'<area shape="rect" coords="0,'Top','Width.i','Top + Height.i'" href="'ImageRoot.i'/'ImageRoot.i'_menubar.html" target="f_title" alt="'ImageRoot.i'">')
  51.         end
  52.     Top = Top + Height.i
  53.     end
  54.  
  55. call writeln(out,'</map>')
  56. call close(out)
  57.  
  58. 'ppmquant 256' AddPart(TempDir,'NavMap.ppm') '>'AddPart(TempDir,'NavMap1.ppm')
  59. 'ppmtogif -transparent white -interlace' AddPart(TempDir,'NavMap1.ppm') '>images/navmap.gif'
  60. 'delete >NIL:' TempDir 'all force'
  61.  
  62. exit
  63.  
  64.  
  65.  
  66.